export class RecycleOrder {
  code:   number;
  data:   Order[];
  status: number;
}

export interface Order {
  id:                  number;
  createdTs:           number;
  workOrderTypeId:     number;
  workOrderType:       string;
  phone:               string;
  customerServiceNum:  null;
  orderStatusId:       number;
  orderStatus:         string;
  regionId:            number;
  regionName:          string;
  streetId:            number;
  streetName:          string;
  communityId:         number;
  communityName:       string;
  addr:                string;
  recycleCategory:     number;
  recycleCategoryDesc: string;
  rawAddr:             string;
  sourceType:          number;
  createOrderTime:     Date;
  gradeStatus:         null;
  gradeStatusDesc:     null;
  customerOrderLogs:   CustomerOrderLog[];
  tServiceOrder:       TServiceOrder;
  orderGradeView:      null;
  locationTypeAddress: string;
  communityRawAddr:    string;
  orderStatusTitle:    string;
}

export interface CustomerOrderLog {
  oldStatus:    number;
  oldStatusStr: string;
  newStatus:    number;
  newStatusStr: string;
  changeTime:   Date;
}

export interface TServiceOrder {
  id:                 number;
  orderStatus:        string;
  orderStatusId:      number;
  recycleCategoryId:  number;
  recycleCategory:    string;
  region:             string;
  address:            string;
  street:             string;
  phone:              string;
  car:                null;
  wechatId:           null;
  accountName:        string;
  remarks:            string;
  recyclerName:       null;
  recyclerPhone:      null;
  recyclerHeadPic:    string;
  recyclerWorkPhone:  null;
  communityName:      string;
  stationName:        string;
  stationNumber:      string;
  latitude:           number;
  longitude:          number;
  oldLatitude:        null;
  oldLongitude:       null;
  createdTs:          number;
  createdBy:          number;
  createdFor:         number;
  cancelledTs:        null;
  confirmedTs:        number;
  dispatchedTs:       null;
  acceptedTs:         null;
  arrivedTs:          null;
  rejectedTs:         null;
  remarkedTs:         null;
  completedTs:        null;
  appointTs:          number;
  appointStartTimeTs: null;
  appointEndTimeTs:   null;
  orderItems:         any[];
  payMethod:          null;
  payMethodDesc:      string;
  payAmount:          null;
  integral:           null;
  ticket:             null;
  recycledBy:         null;
  totalCoupon:        null;
  orderSource:        string;
  orderSourceId:      number;
  orderScore:         number;
  aerialWork:         boolean;
}
